package Soligee.model.vo.cadastros;

import java.io.IOException;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;

@Entity
@Table(name="pessoajuridica")
@PrimaryKeyJoinColumn(name = "cod_pessoa_juridica")
@Inheritance(strategy=InheritanceType.JOINED)
public class PessoaJuridicaVO extends PessoaVO implements Serializable
{
    @Column (name="razao_social")
    private String razaoSocial;
    
    @Column (name="cnpj")
    private String cnpj;
    
    @Column (name="insc_estadual")
    private String inscEstadual;

    @Transient
    @OneToOne(mappedBy="pessoaJuridicaVO", fetch=FetchType.LAZY, cascade={CascadeType.MERGE, CascadeType.PERSIST})
    private FornecedorVO fornecedor;

     
    public PessoaJuridicaVO(){
       super();
    }


    public PessoaJuridicaVO(int codPessoa,String nome, String telefoneUm, String telefoneDois,String email, String paginaWeb, String caminhoImagem,Date dataCadastro,String razaoSocial,String cnpj, String inscEstadual)throws IOException
    {
        super(codPessoa,nome,telefoneUm, telefoneDois, email, paginaWeb, caminhoImagem,dataCadastro);
        this.setRazaoSocial(razaoSocial);
        this.setCnpj(cnpj);
        this.setInscEstadual(inscEstadual);
    }
  
    public String getCnpj() 
    {
        return cnpj;
    }

    public void setCnpj(String cnpj) 
    {
        this.cnpj = cnpj;
    }

    public String getInscEstadual() 
    {
        return inscEstadual;
    }

    public void setInscEstadual(String inscEstadual)
    {
        this.inscEstadual = inscEstadual;
    }
  
    public String getRazaoSocial() 
    {
        return razaoSocial;
    }

    public void setRazaoSocial(String razaoSocial) 
    {
        this.razaoSocial = razaoSocial;
    }

   public FornecedorVO getFornecedor() {
      return fornecedor;
   }

   public void setFornecedor(FornecedorVO fornecedor) {
      this.fornecedor = fornecedor;
   }


}